1
โครงสร้างของลิสต์ที่เชื่อมโยงกัน
AI019Lesson 4
00:00

ในระดับพื้นฐาน ลิสต์ที่เชื่อมโยงกันคือโครงสร้างข้อมูลแบบเรียกซ้ำที่กำหนดโดยการไม่มีหรือการประกอบกันเอง ลิสต์เป็นได้ทั้ง ลิสต์ที่เชื่อมโยงกัน โครงสร้างข้อมูลแบบเรียกซ้ำที่กำหนดโดยการไม่มีหรือการประกอบกันเอง ลิสต์อาจเป็นได้ทั้ง ว่างเปล่า (แสดงด้วย []) หรือประกอบด้วย หัว ที่มีค่าเดียว และ ท้าย ซึ่งเป็นลิสต์ที่สมบูรณ์อีกลิสต์หนึ่ง

1. นิยามแบบเรียกซ้ำ

โดยที่เราให้ท้ายเป็น "ลิสต์เอง" เราจึงอนุญาตให้มีการซ้อนกันแบบไม่จำกัด ซึ่งแสดงให้เห็นจากการสร้าง [ 1 | [ 2 | [ 3 | [ ] ] ] ] โดยที่เครื่องหมายท่อน (|) แยกค่าทันทีจากโครงสร้างที่เหลืออยู่

12[]หัวท้าย (เป็นลิสต์)

2. โครงสร้างพื้นฐานเทียบกับการจำลองความหมาย

ลิสต์พื้นฐานในระบบเสมือนของเออร์แลง (เบียม) เป็นโครงสร้างที่เรียบง่าย การทำงานเช่น List.flatten/1 เป็น การจำลองความหมาย ที่ให้บริการโดยโมดูลลิสต์ของเอลิกซิร์ โครงสร้างข้อมูลดิบไม่ได้ "รู้" ว่าจะทำให้แบนราบได้อย่างไร แต่โมดูลจะให้ตรรกะในการผ่านหัวและท้ายที่ซ้อนกัน

3. ภาพเปรียบเทียบลิสต์เหมือนตุ๊กตาฝังกัน

จินตนาการลิสต์ที่เชื่อมโยงกันเหมือนชุดตุ๊กตาฝังกันของรัสเซีย ตุ๊กตาชั้นนอกสุดคือ หัว เมื่อเปิดมันออก คุณจะพบเพียงสิ่งเดียว: ตุ๊กตาอีกใบ (คือ ท้าย) ว่างเปล่า เมื่อเปิดตุ๊กตาตัวสุดท้ายที่เล็กที่สุดแล้วไม่พบอะไรภายใน

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>